package com.zzl.bonds.ticket.service.common;

import com.zzl.bonds.ticket.dto.common.MsgInfoDto;
import com.zzl.bonds.ticket.dto.feign.BathMsgDto;
import com.zzl.bonds.ticket.entity.TicketFinanceEntity;
import com.zzl.bonds.ticket.entity.TicketOpenEntity;
import com.zzl.general.common.serurity.entity.User;

import java.util.List;

/**
 * 站内信内容
 *
 * @author gull
 * @date 2021-12-03 13:32:10
 */
@SuppressWarnings("unused")
public interface MailMessageService {

    /**
     * 开立发消息,发送单个消息时，调用的方法
     *
     * @return 消息内容
     */
    MsgInfoDto setTicketOpenMsg(TicketOpenEntity entity, User user);

    /**
     * 开立发消息,发送多个消息时，调用的方法
     *
     * @return 消息内容
     */
    List<BathMsgDto> setBatchTicketOpenMsg(TicketOpenEntity entity, User user);

    /**
     * 融资发消息,发送单个消息给复核人时，调用的方法
     *
     * @return 消息内容
     */
    MsgInfoDto setTicketFinanceMsg(TicketFinanceEntity ticketFinanceEntity, User user);

    /**
     * 融资发消息,发送多个消息时，调用的方法
     *
     * @return 消息内容
     */
    List<BathMsgDto> setBatchTicketFinanceMsg(TicketFinanceEntity entity, User user);

    /**
     * 获取开立发送消息的实体
     *
     * @param entity 开立申请
     * @param msg    消息内容
     * @return
     */
    String getMsgInfo(TicketOpenEntity entity, String msg);

    /**
     * 获取融资发送消息的实体
     *
     * @param ticketFinanceEntity 融资申请
     * @param msg                 消息内容
     * @return
     */
    String getFinanceMsg(TicketFinanceEntity ticketFinanceEntity, String msg);
}
